\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t}{
\section{\-Dokumentacja struktury filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t}\index{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
}


\-Filtr \-B\-L\-M\-S -\/ wersja \-G\-P\-U z wykorzystaniem strumieni \-C\-U\-D\-A, \-F\-F\-T na \-G\-P\-U (biblioteka \-C\-U\-F\-F\-T).  




{\ttfamily \#include $<$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T.\-h$>$}

\subsection*{\-Metody publiczne}
\begin{DoxyCompactItemize}
\item 
\hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac26df43a4e84d260fac62ec5d4405e70}{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T} (int \-Nu, int \-Msize, int \-Bsize, float mi\-Param, float beta\-Param)
\item 
\hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1640804ed6d4a4f2cda7f0c7a6428bd0}{$\sim$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T} ()
\item 
void \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac89316972623def78e83694a6b3718f7}{data\-Filtering} (int \-Nu, cudacomplex $\ast$u, cudacomplex $\ast$d)
\item 
void \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aa992494e49e3d4a49e87c03b319f8fdd}{sync\-Streams} ()
\item 
void \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_abde5f1be4a93b196c3bb1fae8c1581ca}{free\-Memory} ()
\end{DoxyCompactItemize}
\subsection*{\-Atrybuty publiczne}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1a6136e1a99dfc2de817fcfc8cbc1fb8}{
int \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1a6136e1a99dfc2de817fcfc8cbc1fb8}{\-M}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1a6136e1a99dfc2de817fcfc8cbc1fb8}

\begin{DoxyCompactList}\small\item\em długość filtru \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a77be10fb431774c9851a326f1008c9b0}{
int \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a77be10fb431774c9851a326f1008c9b0}{\-B}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a77be10fb431774c9851a326f1008c9b0}

\begin{DoxyCompactList}\small\item\em długość bloku danych \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ab76c16e758772549075fab59229ed326}{
float \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ab76c16e758772549075fab59229ed326}{mi}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ab76c16e758772549075fab59229ed326}

\begin{DoxyCompactList}\small\item\em parametr mi filtru \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a5eaf86dcee8603f8161a3a69881ea4c3}{
float \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a5eaf86dcee8603f8161a3a69881ea4c3}{beta}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a5eaf86dcee8603f8161a3a69881ea4c3}

\begin{DoxyCompactList}\small\item\em parametr beta filtru \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aeb5f7cd29e509f8924ce43f917ecc0de}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aeb5f7cd29e509f8924ce43f917ecc0de}{buf\-\_\-u}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aeb5f7cd29e509f8924ce43f917ecc0de}

\begin{DoxyCompactList}\small\item\em bufor zawierajacy dwa bloki sygnalu u \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a67ee372d5dacc54845ab8d45c751816b}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a67ee372d5dacc54845ab8d45c751816b}{buf\-\_\-d}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a67ee372d5dacc54845ab8d45c751816b}

\begin{DoxyCompactList}\small\item\em blok/bufor (dlugosc 2\-B) sygnalu d \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3d18b1f74f9cc585d184c48668ddfbf7}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3d18b1f74f9cc585d184c48668ddfbf7}{buf\-\_\-y}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3d18b1f74f9cc585d184c48668ddfbf7}

\begin{DoxyCompactList}\small\item\em blok/bufor (dlugosc 2\-B ze wzgledu na pozniejsze dzialanie ifft) sygnalu wyjsciowego y \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ad6fb24c7eb4973e372e906f87a5f876f}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ad6fb24c7eb4973e372e906f87a5f876f}{buf\-\_\-e}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ad6fb24c7eb4973e372e906f87a5f876f}

\begin{DoxyCompactList}\small\item\em blok/bufor (dlugosc 2\-B) sygnalu e \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a2e10ce9be350ce753b63a0856a81c75a}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a2e10ce9be350ce753b63a0856a81c75a}{e}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a2e10ce9be350ce753b63a0856a81c75a}

\begin{DoxyCompactList}\small\item\em sygnał wyjściowy e \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3607e5f43c059ba41c256563b085f756}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3607e5f43c059ba41c256563b085f756}{lc}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3607e5f43c059ba41c256563b085f756}

\begin{DoxyCompactList}\small\item\em wagi filtrów \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a05e3b337e4d4f763ff21d36d2afca528}{
float $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a05e3b337e4d4f763ff21d36d2afca528}{lambda}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a05e3b337e4d4f763ff21d36d2afca528}

\begin{DoxyCompactList}\small\item\em parametry lambda \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a71e8ab17a49fd266889c6f519fc31f3e}{
cuda\-Stream\-\_\-t \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a71e8ab17a49fd266889c6f519fc31f3e}{stream0}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a71e8ab17a49fd266889c6f519fc31f3e}

\begin{DoxyCompactList}\small\item\em strumień \-C\-U\-D\-A 1 \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac3274bc8fa2ca3e601602cc881296b56}{
cuda\-Stream\-\_\-t \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac3274bc8fa2ca3e601602cc881296b56}{stream1}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac3274bc8fa2ca3e601602cc881296b56}

\begin{DoxyCompactList}\small\item\em strumień \-C\-U\-D\-A 1 \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ae121a2f848310d3073d3a9ee3d7ee1b6}{
float $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ae121a2f848310d3073d3a9ee3d7ee1b6}{dev\-\_\-lambda0}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ae121a2f848310d3073d3a9ee3d7ee1b6}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a085e78aceef31b398b439be95ec609c5}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a085e78aceef31b398b439be95ec609c5}{dev\-\_\-\-U0}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a085e78aceef31b398b439be95ec609c5}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufor zawierajacy dwa bloki sygnalu u po dzialaniu \-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a043ed3cd0b0bb81dcd0f3057f61dd720}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a043ed3cd0b0bb81dcd0f3057f61dd720}{dev\-\_\-\-U\-\_\-sub0}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a043ed3cd0b0bb81dcd0f3057f61dd720}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufory 'podsygnalow' wejsciowych po \-F\-F\-T (2\-B wektorow o dlugosci \-M/\-B w postaci jednego wektora) \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a56a5d49c3bea47f40918f51f7a909118}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a56a5d49c3bea47f40918f51f7a909118}{dev\-\_\-\-Y0}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a56a5d49c3bea47f40918f51f7a909118}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E probki 'podsygnalow' wyjsciowych przed \-I\-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_afeeec4ec8138558b23269c975c67b99d}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_afeeec4ec8138558b23269c975c67b99d}{dev\-\_\-\-E0}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_afeeec4ec8138558b23269c975c67b99d}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufor zawierajacy dwa bloki sygnalu e po dzialaniu \-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a852f41bd3081f8a4a4c5a96fca073dd5}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a852f41bd3081f8a4a4c5a96fca073dd5}{dev\-\_\-lc0}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a852f41bd3081f8a4a4c5a96fca073dd5}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E wagi filtrow. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ae59e13660a47e2b5518f8f1a7554d982}{
float $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ae59e13660a47e2b5518f8f1a7554d982}{dev\-\_\-lambda1}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ae59e13660a47e2b5518f8f1a7554d982}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3be1bde97a6bb6ce496bf102d905ccd5}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3be1bde97a6bb6ce496bf102d905ccd5}{dev\-\_\-\-U1}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3be1bde97a6bb6ce496bf102d905ccd5}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufor zawierajacy dwa bloki sygnalu u po dzialaniu \-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ad45cc830ebaa3876bd2da745ef7f0ca4}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ad45cc830ebaa3876bd2da745ef7f0ca4}{dev\-\_\-\-U\-\_\-sub1}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ad45cc830ebaa3876bd2da745ef7f0ca4}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufory 'podsygnalow' wejsciowych po \-F\-F\-T (2\-B wektorow o dlugosci \-M/\-B w postaci jednego wektora) \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aeda79b5ff0e9d39796464cd093bedf2d}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aeda79b5ff0e9d39796464cd093bedf2d}{dev\-\_\-\-Y1}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aeda79b5ff0e9d39796464cd093bedf2d}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E probki 'podsygnalow' wyjsciowych przed \-I\-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a091d9716eb3ee38fe84e684486e6154d}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a091d9716eb3ee38fe84e684486e6154d}{dev\-\_\-\-E1}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a091d9716eb3ee38fe84e684486e6154d}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufor zawierajacy dwa bloki sygnalu e po dzialaniu \-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1c9426b2b28b06bb7c81a4147194f578}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1c9426b2b28b06bb7c81a4147194f578}{dev\-\_\-lc1}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1c9426b2b28b06bb7c81a4147194f578}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E wagi filtrow. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a55b97c444931365604399a97ed5f038b}{
float $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a55b97c444931365604399a97ed5f038b}{dev\-\_\-lambda}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a55b97c444931365604399a97ed5f038b}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a052f495f5fe7c96eddd1895595d7177d}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a052f495f5fe7c96eddd1895595d7177d}{dev\-\_\-\-U}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a052f495f5fe7c96eddd1895595d7177d}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufor zawierajacy dwa bloki sygnalu u po dzialaniu \-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3d2f67548f59400660ff6bb4ecf23860}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3d2f67548f59400660ff6bb4ecf23860}{dev\-\_\-\-U\-\_\-sub}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a3d2f67548f59400660ff6bb4ecf23860}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufory 'podsygnalow' wejsciowych po \-F\-F\-T (2\-B wektorow o dlugosci \-M/\-B w postaci jednego wektora) \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a439ea80efdcaed92ae9393748c638f27}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a439ea80efdcaed92ae9393748c638f27}{dev\-\_\-\-Y}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a439ea80efdcaed92ae9393748c638f27}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E probki 'podsygnalow' wyjsciowych przed \-I\-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a610e68760a08af11c27795f1d1fa3c5c}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a610e68760a08af11c27795f1d1fa3c5c}{dev\-\_\-\-E}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a610e68760a08af11c27795f1d1fa3c5c}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufor zawierajacy dwa bloki sygnalu e po dzialaniu \-F\-F\-T. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a994d30bf90aa06349e363618287e71f4}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a994d30bf90aa06349e363618287e71f4}{dev\-\_\-lc}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a994d30bf90aa06349e363618287e71f4}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E wagi filtrow. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac48a8d58c0eb35a88e01856460401e52}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac48a8d58c0eb35a88e01856460401e52}{dev\-\_\-buf\-\_\-u}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac48a8d58c0eb35a88e01856460401e52}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E bufor zawierajacy dwa bloki sygnalu u. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a39bb1f75fce7e6b5d9621a907161b419}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a39bb1f75fce7e6b5d9621a907161b419}{dev\-\_\-buf\-\_\-y}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a39bb1f75fce7e6b5d9621a907161b419}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E blok/bufor (dlugosc 2\-B ze wzgledu na pozniejsze dzialanie ifft) sygnalu wyjsciowego y. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a64d69c6f4c068011ea3e8f2f72e8429b}{
cudacomplex $\ast$ \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a64d69c6f4c068011ea3e8f2f72e8429b}{dev\-\_\-buf\-\_\-e}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a64d69c6f4c068011ea3e8f2f72e8429b}

\begin{DoxyCompactList}\small\item\em \-D\-E\-V\-I\-C\-E blok/bufor (dlugosc 2\-B) sygnalu e. \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a6593e8c2dee0e9a4830f3b7e525c27ca}{
cufft\-Handle \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a6593e8c2dee0e9a4830f3b7e525c27ca}{cufft\-Plan\-\_\-\-U}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a6593e8c2dee0e9a4830f3b7e525c27ca}

\begin{DoxyCompactList}\small\item\em plan \-F\-F\-T \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a7cdb9e8ab0141e93d110b43dc658c490}{
cufft\-Handle \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a7cdb9e8ab0141e93d110b43dc658c490}{cufft\-Plan\-\_\-\-Y}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a7cdb9e8ab0141e93d110b43dc658c490}

\begin{DoxyCompactList}\small\item\em plan \-I\-F\-F\-T \end{DoxyCompactList}\item 
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a16738ddd8e46292898deac8fce6c5fa0}{
cufft\-Handle \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a16738ddd8e46292898deac8fce6c5fa0}{cufft\-Plan\-\_\-\-E}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a16738ddd8e46292898deac8fce6c5fa0}

\begin{DoxyCompactList}\small\item\em plan \-F\-F\-T \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{\-Opis szczegółowy}
\-Filtr \-B\-L\-M\-S -\/ wersja \-G\-P\-U z wykorzystaniem strumieni \-C\-U\-D\-A, \-F\-F\-T na \-G\-P\-U (biblioteka \-C\-U\-F\-F\-T). 

\-Opisuje filtr blokowy działający w oparciu o platformę \-C\-U\-D\-A, wykorzystujący strumienie. 

\subsection{\-Dokumentacja konstruktora i destruktora}
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac26df43a4e84d260fac62ec5d4405e70}{
\index{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}!filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
\index{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}!filterBLMS_GPUstreamsCUFFT@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
\subsubsection[{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}]{\setlength{\rightskip}{0pt plus 5cm}filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T\-::filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T (
\begin{DoxyParamCaption}
\item[{int}]{\-Nu, }
\item[{int}]{\-Msize, }
\item[{int}]{\-Bsize, }
\item[{float}]{mi\-Param, }
\item[{float}]{beta\-Param}
\end{DoxyParamCaption}
)}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac26df43a4e84d260fac62ec5d4405e70}
\-Konstruktor struktury \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t}{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}.\par
 \-Alokacja pamięci, inicjalizacja zmiennych, wyznaczenie planów \-F\-F\-T.


\begin{DoxyParams}{\-Parametry}
{\em \-Nu} & -\/ liczba próbek sygnału \\
\hline
{\em \-Msize} & -\/ długość filtru \\
\hline
{\em \-Bsize} & -\/ długość bloku danych \\
\hline
{\em mi\-Param} & -\/ parametr mi filtru \\
\hline
{\em beta\-Param} & -\/ parametr beta filtru \\
\hline
\end{DoxyParams}
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1640804ed6d4a4f2cda7f0c7a6428bd0}{
\index{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}!$\sim$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{$\sim$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
\index{$\sim$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{$\sim$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}!filterBLMS_GPUstreamsCUFFT@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
\subsubsection[{$\sim$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}]{\setlength{\rightskip}{0pt plus 5cm}filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T\-::$\sim$filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_a1640804ed6d4a4f2cda7f0c7a6428bd0}
\-Destruktor struktury \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t}{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}. 

\subsection{\-Dokumentacja funkcji składowych}
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac89316972623def78e83694a6b3718f7}{
\index{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}!data\-Filtering@{data\-Filtering}}
\index{data\-Filtering@{data\-Filtering}!filterBLMS_GPUstreamsCUFFT@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
\subsubsection[{data\-Filtering}]{\setlength{\rightskip}{0pt plus 5cm}void filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T\-::data\-Filtering (
\begin{DoxyParamCaption}
\item[{int}]{\-Nu, }
\item[{cudacomplex $\ast$}]{u, }
\item[{cudacomplex $\ast$}]{d}
\end{DoxyParamCaption}
)}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_ac89316972623def78e83694a6b3718f7}
\-Metoda przeprowadzająca filtrację adaptacyjną na \-G\-P\-U.


\begin{DoxyParams}{\-Parametry}
{\em \-Nu} & -\/ liczba próbek sygnału \\
\hline
{\em $\ast$u} & -\/ sygnał wejściowy (input) \\
\hline
{\em $\ast$d} & -\/ sygnał odniesienia (desired) \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{\-Zwraca}
void 
\end{DoxyReturn}
odczytywanie bloku danych \hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_abde5f1be4a93b196c3bb1fae8c1581ca}{
\index{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}!free\-Memory@{free\-Memory}}
\index{free\-Memory@{free\-Memory}!filterBLMS_GPUstreamsCUFFT@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
\subsubsection[{free\-Memory}]{\setlength{\rightskip}{0pt plus 5cm}void filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T\-::free\-Memory (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_abde5f1be4a93b196c3bb1fae8c1581ca}
\-Metoda zwalniająca pamięć po strukturze \hyperlink{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t}{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}.

\begin{DoxyReturn}{\-Zwraca}
void 
\end{DoxyReturn}
\hypertarget{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aa992494e49e3d4a49e87c03b319f8fdd}{
\index{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}!sync\-Streams@{sync\-Streams}}
\index{sync\-Streams@{sync\-Streams}!filterBLMS_GPUstreamsCUFFT@{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T}}
\subsubsection[{sync\-Streams}]{\setlength{\rightskip}{0pt plus 5cm}void filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T\-::sync\-Streams (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{structfilter_b_l_m_s___g_p_ustreams_c_u_f_f_t_aa992494e49e3d4a49e87c03b319f8fdd}
\-Metoda pozwalająca na synchronizację strumieni.

\begin{DoxyReturn}{\-Zwraca}
void 
\end{DoxyReturn}


\-Dokumentacja dla tej struktury została wygenerowana z plików\-:\begin{DoxyCompactItemize}
\item 
\-C\-:/\-Users/boski/\-Documents/\-Visual Studio 2008/\-Projects/cuda/blms/\hyperlink{filter_b_l_m_s___g_p_ustreams_c_u_f_f_t_8h}{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T.\-h}\item 
\-C\-:/\-Users/boski/\-Documents/\-Visual Studio 2008/\-Projects/cuda/blms/\hyperlink{filter_b_l_m_s___g_p_ustreams_c_u_f_f_t_8cu}{filter\-B\-L\-M\-S\-\_\-\-G\-P\-Ustreams\-C\-U\-F\-F\-T.\-cu}\end{DoxyCompactItemize}
